	let commonCzwjs = {}
	//获取近一周、近一个月的时间段
	commonCzwjs.getDateRange = function(dateNow, intervalDays, bolPastTime) {
		let oneDayTime = 24 * 60 * 60 * 1000;
		let list = [];
		let lastDay;

		if (bolPastTime == true) {
			lastDay = new Date(dateNow.getTime() - intervalDays * oneDayTime);
			list.push(commonCzwjs.formateDate(lastDay));
			list.push(commonCzwjs.formateDate(dateNow));
		} else {
			lastDay = new Date(dateNow.getTime() + intervalDays * oneDayTime);
			list.push(commonCzwjs.formateDate(dateNow));
			list.push(commonCzwjs.formateDate(lastDay));
		}
		return list;
	}

	commonCzwjs.formateDate = function(time, type) {
		let year = time.getFullYear()
		let month = time.getMonth() + 1
		let day = time.getDate()

		if (month < 10) {
			month = '0' + month
		}

		if (day < 10) {
			day = '0' + day
		}
		if (type) {
			return year + '年' + month + '月' + day + '日'
		} else {
			return year + '-' + month + '-' + day + ''
		}

	}
	// 时间转换方法(返回年月)
	commonCzwjs.reGetYearsMonth = function(value) {
		let time = ""
		if (value) {
			time = value.replace("-", "")
		}
		return time;
	}
	// 比较两个时间大小
	commonCzwjs.compareDate = function(date1, date2) {
		var oDate1 = new Date(date1);
		var oDate2 = new Date(date2);
		if (oDate1.getTime() > oDate2.getTime()) {
			return true; //第一个大
		} else {
			return false; //第二个大
		}
	}
	// 页面存在栈中则直接跳转不新增、页面不存在栈中则新增 (url:路径,key:本地存储名称,data:存储数据) 
	// 注：通过自定义按钮跳转时使用，防止页面重复存于栈中，导致小程序自带返回或右滑返回页面重复出现
	commonCzwjs.goPage = async function(obj) {
		var pages = getCurrentPages() //页面栈
		var len = pages.length
		var dlt = ''
		// console.log(pages)
		//如果有，将第一个‘/’去掉，然后再补上（开发者习惯不同，有些人会给url加/，有些则忘了，兼容处理
		var target = '/' + obj.url.replace(/^\//, '')
		console.log(target)
		//查找目标页在页面栈的位置
		for (var i = 0; i < len; i++) {
			// console.log(pages[i].route)
			if ('/' + pages[i].route == target) { //
				dlt = i + 1; //目标页在栈中的位置
				// console.log(dlt)
				break;
			}
		}
		// 保存数据
		// 由于navigateBack()回到指定页面，不会重新执行onLoad事件，可用缓存传参
		if (obj.key) {
			uni.setStorageSync(obj.key, JSON.stringify(obj.data));
		}
		// 更具判断选择跳转方式
		if (!dlt) {
			//页面不在栈中（可设置栈最多存储页面数量）
			if (len < 100) {
				uni.navigateTo({
					url: target
				});
			} else {
				uni.redirectTo({
					url: target
				});
			}
		} else {
			//页面存在栈中
			uni.navigateBack({
				delta: len - dlt
			});
		}
	}
	//获取中国标准时间
	commonCzwjs.getTimePyl = function(date) {
		let current = ""
		if (date) {
			current = new Date(date)
		} else {
			current = new Date()
		}
		// 中国偏移量
		const chinaOffset = 480
		// 当前偏移量
		const cOffset = current.getTimezoneOffset()
		// 相差偏移量
		const xOffset = parseFloat(chinaOffset) + parseFloat(cOffset)
		// 当前时间
		current = new Date(current.getTime() + xOffset * 60 * 1000)
		return current
	}
	// 固定中国时区，获取当前时间
	commonCzwjs.date = function(inTime, type, value) {
		const time=commonCzwjs.getTimePyl(inTime)
		let year = time.getFullYear()
		let month = time.getMonth() + 1
		let day = time.getDate()
		// console.log(year,month,day)
		if (month < 10) {
			month = '0' + month
		}

		if (day < 10) {
			day = '0' + day
		}
		if (type == "年月日") {
			return year + '年' + month + '月' + day + '日'
		} else if (type == "stamp") {
			return time
		} else {
			if (!value) {
				value = ""
			}
			return year + value + month + value + day
		}
	}
	// 获取当前时间的第一天和最后一天
	commonCzwjs.getMonthFE = function(date,startDay=1) {
		let myDate = commonCzwjs.getTimePyl(date)
		let currenMonth = myDate.getMonth()
		let firstDay = new Date(myDate.getFullYear(), currenMonth, startDay)
		let lastDay = new Date(firstDay.getFullYear(), currenMonth + 1, 0)
		firstDay = commonCzwjs.formateDate(firstDay)
		lastDay = commonCzwjs.formateDate(lastDay)
		return [firstDay, lastDay]
	}
	// 获取时间下一个月第一天和最后一天
	commonCzwjs.getNextMonthFE = function(date) {
		let current = commonCzwjs.getTimePyl(date)
		let nextMonth = new Date(current.getFullYear(), current.getMonth() + 1, 1)
		return commonCzwjs.getMonthFE(nextMonth)
	}
	// 通用类名称过滤
	commonCzwjs.getTypeMc=function(value,typeArr){
	  let name = "";
	  typeArr.map(item => {
	    if (item.code == value) {
	      name = item.codeName;
	    }
	  });
	  return name;
	}
	export default commonCzwjs